// 判断一个数字是否是若干数量(数量>1)的连续正整数的和
public class IsSumOfConsecutiveNumbers {

    // 1~2
    // 1~3
    // 1~4
    //....
    // 1~num

    // 2~3
    // 2~4
    //....
    // 2~num

    //....
    public static boolean is1(int num){
        for(int start = 1 ; start <= num; start++){
            int sum = start;
            for(int next = start + 1; next <= num; next++){
                sum+=next;
                if(sum > num){
                    break;
                }
                if(sum == num){
                    return true;
                }
            }
        }
        return false;
    }

    public static void main(String[] args) {
        //开始打表测试
        for(int i = 1; i <= 100; i++){
            System.out.println(i + ":" + (is1(i) == true ? "T" : "F"));
        }
    }
    //通过打表找出规律符合1，2，4，8，16....   2的次幂就为false;

    public static boolean is2(int num){
        return (num & (num - 1)) != 0;
    }
}
